Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC: added performance tests for sparse getindex + a README file #7177

Merged
merged 1 commit into from
Jun 9, 2014

Conversation

mauro3
Copy link
Contributor

@mauro3 mauro3 commented Jun 8, 2014

In PR #7131 @ViralBShah suggested that I should add the getindex performance test to perf/. Here a tidied up version of https://gist.github.com/mauro3/7f01931b5f25d7b397af.

Questions:

  • I created a README.md as I tried to figure out how perf/ works. Maybe this could be useful? It will need a read.
  • more or fewer tests?
  • which test should be included in codespeed?

@ViralBShah
Copy link
Member

Cc @staticfloat

@mauro3
Copy link
Contributor Author

mauro3 commented Jun 9, 2014

I ran the sparse performance tests for Julia 0.2.1, 0.3 before PR #7131 and after. Here the results:
https://gist.github.com/mauro3/25e0e8049bc136df04b8

Interestingly, performance decreased in many tests from 0.2.1 to 0.3-pre-PR, even though the getindex methods did not change! (why?)

PR#7131 increased performance in all but 3 tests compared to 0.3-pre-PR. They are all for small-ish matrices of 1000x1000. I'll have a look at those.

@ViralBShah
Copy link
Member

#6112 is tracking the performance regressions. Best to continue the performance regression part of the discussion there.

- `sort` various sorting algorithms
- `spell` an implementation of a spell corrector
[http://norvig.com/spell-correct.html](http://norvig.com/spell-correct.html)
- `sparse` related to sparse matrices
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd round out these descriptions a bit more. Something along the lines of:

  • micro: A set of micro-benchmarks commonly used to compare programming languages; these results are shown on http://julialang.org/
  • blas, lapack: Performance tests for linear algebra tasks from low-level operations such as matrix multiplies to higher-level operations like eigenvalue problems.
  • cat: Performance tests for concatenation of vectors and matrices.
  • kernel: Performance tests used to track real-world code examples that previously ran slowly.
  • shootout: Tracks the performance of tests taken from the Debian shootout performance tests.
  • sort: Performance tests of sorting algorithms
  • spell: Performance tests of Peter Norvig's spelling corrector
  • sparse: Performance tests of sparse matrix operations.

@mauro3
Copy link
Contributor Author

mauro3 commented Jun 9, 2014

Thanks @staticfloat, README is updated.

@staticfloat
Copy link
Member

lgtm

@staticfloat staticfloat closed this Jun 9, 2014
@staticfloat staticfloat reopened this Jun 9, 2014
staticfloat added a commit that referenced this pull request Jun 9, 2014
RFC: added performance tests for sparse getindex + a README file
@staticfloat staticfloat merged commit 66cfa99 into JuliaLang:master Jun 9, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants